// 批量注册公共组件
/**
 * 插件形式注册全局公共组件的js文件
 * Vue插件写法:{install(Vue构造函数){}}
 * 插件生效: Vue.use(plugins) -> 需要在入口注册
 */

import PageTools from './PageTools'
import UploadExcel from './UploadExcel'
import UploadImg from './UploadImg'
import ScreenFull from './ScreenFull'
import Lang from './Lang'

// 定义用于批量注册组件的数组
const components = [PageTools, UploadExcel, UploadImg, ScreenFull, Lang]

export default {
  /**
   *
   * @param {*} Vue install 函数可以拿到参数 Vue，且将来会在 Vue.use 时，自动调用该 install 函数
   */
  install (Vue) {
    // 一个一个地注册全局组件
    // Vue.component('PageTools', PageTools)
    // Vue.component('UploadExcel', UploadExcel)
    components.forEach(component => {
      // 一定要给组件设置一个name
      Vue.component(component.name, component)
    })
  }
}
